import { IMessageBase } from "../../Framework/MQ/IMessageBase";
import { MessageManager } from "../../Framework/MQ/MessageManager";
import { SerializeStream } from "../../Framework/Serialize/SerializeStream";
import { CrossMassacreServerKeyHelper } from "./CrossMassacreServerKeyHelper";
import { SEntityId } from "./SEntityId";
import { SServerKey } from "./SServerKey";
type int = number;
//class SCrossMassacreChooseServer
    
    export  class SCrossMassacreChooseServer extends IMessageBase
    {
        constructor(arg1: Boolean=false)
        {
            
            super();if (arg1) 
            {
                MessageManager.instance().regist(this);
            }
            return;
        }

        public /* override */ getType(): int
        {
            return this._type;
        }

        public /* override */ clone(): IMessageBase
        {
            return new SCrossMassacreChooseServer();
        }

        public /* override */ __write(arg1: SerializeStream): void
        {
            this.entityId.__write(arg1);
            this.serverKey.__write(arg1);
            CrossMassacreServerKeyHelper.write(arg1, this.lists);
            return;
        }

        public /* override */ __read(arg1: SerializeStream): void
        {
            this.entityId = new SEntityId();
            this.entityId.__read(arg1);
            this.serverKey = new SServerKey();
            this.serverKey.__read(arg1);
            this.lists = CrossMassacreServerKeyHelper.read(arg1);
            return;
        }

        public /* const */_type: int=868;

        public /* var */entityId: SEntityId;

        public /* var */serverKey: SServerKey;

        public /* var */lists: Map<any, any> /* flash.utils.Dictionary */;

        public static /* var */_regist: SCrossMassacreChooseServer;
    }

            SCrossMassacreChooseServer._regist = new SCrossMassacreChooseServer(true);
        